/*
    原始类型

*/

const a:string = 'foobar'

const b:number = 100 //数字类型还包括NaN infinity 

const c:boolean = true //false
//以上类型在非严格模式(strictNullChecks)下还可以赋值null

// const d:boolean = null

const e:void = undefined //一般为空值，函数没有返回值的时候标记返回值类型，只能够存放null 或者 undefined，严格模式下只能是undefined

const f:null = null

const g:undefined = undefined

// const h:symbol = Symbol() //symbol 是JavaScript内置的标准对象，例如Array、Object这些，Symbol是es2015新增的内置对象，自身也是有类型，这些类型在TypeScript当中已经帮我们定义好了

// Array 在es5里面声明了，tsconfig.json里面的target里面定义为es5，所以说用es2015的Symbol会报错，要么修改target里为es2015，
// 如果必须编译到es5的话，可以使用lib选项去指定我们所引用的标准库，lib里面增加es2015

//标准库就是内置对象所对应的声明，在代码当中使用内置对象就必须要引用对应的标准库，否则TypeScript就找不到对应的类型，就会报错
// const error:string = 100